package com.whmall.service.crm.module.supplierdeveloppool.service;

import com.whmall.component.entity.dto.PageReqDTO;
import com.whmall.component.entity.dto.PageRspDTO;
import com.whmall.service.crm.entity.dto.supplierdevelop.AddControlDirectoryReqDTO;
import com.whmall.service.crm.entity.dto.supplierdevelop.ReleaseSupplierReqDTO;
import com.whmall.service.crm.entity.dto.supplierdevelop.SupplierDevelopQueryRepDTO;
import com.whmall.service.crm.entity.dto.supplierdevelop.SupplierDevelopQueryRspDTO;

public interface SupplierDevelopPoolService {

    /**
     * 供应商开发池 列表搜索
     * @param repDTO
     * @return
     */
    PageRspDTO<SupplierDevelopQueryRspDTO> list(PageReqDTO pageReqDTO, SupplierDevelopQueryRepDTO repDTO);

    /**
     * 获取供应商
     * @param employeeId
     * @param companyId
     */
    void acquireSupplier(Long employeeId, Long companyId);

    /**
     * 释放供应商
     * @param reqDTO
     */
    void releaseSupplier(ReleaseSupplierReqDTO reqDTO);

    /**
     * 添加控制目录
     * @param reqDTO
     */
    void addControlDirectory(AddControlDirectoryReqDTO reqDTO);

    /**
     * 移除控制目录
     * @param employeeId
     * @param companyId
     */
    boolean removeControlDirectory(Long employeeId, Long companyId);

    /**
     *  是否能移除控制目录
     * @param companyId
     * @return
     */
    public boolean canRemoveControlDirectory(Long companyId);



}
